package com.wl.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import com.wl.entity.Dept;

public interface DeptMapper {
	/**
	 * 根据id删除
	 * @param deptid
	 * @return
	 */
    int deleteByPrimaryKey(Integer deptid);

    /**
     * 增加
     * @param record
     * @return
     */
    int insert(Dept record);

    /**
     * 动态增加
     * @param record
     * @return
     */
    int insertSelective(Dept record);

    /**
     * 根据部门编号查询
     * @param deptid
     * @return
     */
    Dept selectByPrimaryKey(Integer deptid);

    /**
     * 根据部门编号动态修改
     * @param record
     * @return
     */
    int updateByPrimaryKeySelective(Dept record);

    /**
     * 修改
     * @param record
     * @return
     */
    int updateByPrimaryKey(Dept record);
    
    /**
     * 查询全部信息
     * @return
     */
  	public List<Dept> selectAllDept();
  	
  	/**
  	 * 增加
  	 * @param dept
  	 * @return
  	 */
  	public boolean addDept(Dept dept);
    
    /**
	 * 分页和模糊查询的接口
	 * @param start  起始位置
	 * @param pageSize 每页记录数
	 * @param content 模糊查询的关键字
	 * @return  当页数据 List
	 */
	List<Dept> selectByPage(@Param("start") Integer start, @Param("pageSize") Integer pageSize,
			@Param("content") String content);
	
	/**
	 * 根据条件来查询满足条件的记录数
	 * @param content  模糊查询的关键字
	 * @return  记录总数
	 */
	int selectCount(@Param("content") String content);
	
	/**
	 * 关联查询部门下的员工
	 * @param deptid
	 * @return
	 */
	public Dept selectByDeptid(int deptid);
	
	/**
	 * 根据部门名称查找部门信息
	 * @param deptname
	 * @return
	 */
	public Dept selectDeptByName(String deptname);
	
	/**
	 * 根据部门名称查找02环节审批人
	 * @param deptname
	 * @return
	 */
	public Dept selectByDeptName(String deptname);
}